package com.azxcrm.project.system.order.dao;

import java.util.List;

import com.azxcrm.project.system.order.domain.OrderDeal;	

/**
 * 成单和退单 数据层
 * 
 * @author Dustyone
 * @date 2018-09-11
 */
public interface IOrderDealDao 
{

	/**
     * 查询成单和退单信息
     * 
     * @param dealId 成单和退单ID
     * @return 成单和退单信息
     */
	public OrderDeal selectOrderDealById(Integer dealId);
	
	/**
     * 查询成单和退单列表
     * 
     * @param orderDeal 成单和退单信息
     * @return 成单和退单集合
     */
	public List<OrderDeal> selectOrderDealList(OrderDeal orderDeal);
	
	/**
     * 新增成单和退单
     * 
     * @param orderDeal 成单和退单信息
     * @return 结果
     */
	public int insertOrderDeal(OrderDeal orderDeal);
	
	/**
     * 修改成单和退单
     * 
     * @param orderDeal 成单和退单信息
     * @return 结果
     */
	public int updateOrderDeal(OrderDeal orderDeal);
	
	/**
     * 删除成单和退单
     * 
     * @param dealId 成单和退单ID
     * @return 结果
     */
	public int deleteOrderDealById(Integer dealId);
	
	/**
     * 批量删除成单和退单
     * 
     * @param dealIds 需要删除的数据ID
     * @return 结果
     */
	public int batchDeleteOrderDeal(Integer[] dealIds);
	
	/**
	 * 根据订单状态查询
	 * @param orderStatus 订单状态
     * @return 结果
	 */
	public List<OrderDeal> OrderDealList(OrderDeal orderDeal);
	
	/**
	 * 查看指定客户信息是否被订单引用
	 * @param idNo
	 * @return
	 */
	public int checkCustomerInfoCasecaded(String idNo);
	
	/**
	 * 统计总成交金额
	 * @return 结果
	 */
	public double SumProductPrice();
}